Providing video presentation commentary

ABSTRACT

Embodiments are disclosed that relate to providing commentary for video content. For example, one disclosed embodiment provides a method comprising receiving and storing an input of commentary data from each of a plurality of commentary input devices, and also, for each input of commentary data, receiving and storing identification metadata identifying a commentator, for each input of commentary data, synchronization metadata that synchronizes the commentary data with the associated media content item is received and stored. The method further comprises receiving a request from a requesting media presentation device for commentary relevant to a specified media content item and a specified user, identifying relevant commentary data based upon social network information for the specified user, and sending the relevant commentary data to the requesting client device.

CROSS-REFERENCE TO RELATED APPLICATIONS

This application is a continuation of U.S. patent application Ser. No.13/164,434, filed on Jun. 20, 2011, and titled “PROVIDING VIDEOPRESENTATION COMMENTARY” the entire disclosure of which is incorporatedby reference.

BACKGROUND

Some video presentations may be accompanied by commentary related to thecontent being presented. Such commentary may take many different forms.For example, commentators are often used in sports broadcasts to discussgame events as they occur. Commentators also may provide commentary onother real-time events, such as political debates, as well as onpre-recorded content.

Commentary is often recorded as an integral part of the content, suchthat the same commentary is replayed with each rebroadcast of thecontent. Further, the generation of such commentary is often performedunder the control of the content producer. Thus, such commentary may berelatively limited in perspective.

SUMMARY

Various embodiments are disclosed that relate to providing commentaryfor video content items. For example, one disclosed embodiment providesa method comprising receiving and storing an input of commentary datafrom each of a plurality of commentary input devices, and also, for eachinput of commentary data, receiving and storing identification metadataidentifying a commentator and an associated media content item. Further,for each input of commentary data, synchronization metadata thatsynchronizes the commentary data with the associated media content itemis received and stored. The method further comprises receiving a requestfrom a requesting media presentation device for commentary relevant to aspecified media content item and a specified user, identifying relevantcommentary data based upon social network information for the specifieduser, and sending the relevant commentary data to the requesting clientdevice.

This Summary is provided to introduce a selection of concepts in asimplified form that are further described below in the DetailedDescription. This Summary is not intended to identify key features oressential features of the claimed subject matter, nor is it intended tobe used to limit the scope of the claimed subject matter. Furthermore,the claimed subject matter is not limited to implementations that solveany or all disadvantages noted in any part of this disclosure.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 illustrates the generation and later playback of commentaryaccording to an embodiment of the present disclosure.

FIG. 2 shows a schematic diagram of an embodiment of a use environmentfor recording and presenting video content commentary.

FIG. 3 shows a flow diagram depicting an embodiment of a method ofproviding commentary relevant to a selected video content item.

FIGS. 4A-4B show a flow diagram depicting an embodiment of a method ofgenerating commentary data and requesting/playing commentary data.

FIG. 5 shows an embodiment of an example computing device.

DETAILED DESCRIPTION

As mentioned above, video content commentary is often provided by theproducer of the underlying content. For example, networks that broadcastsports presentations often utilize commentators that attend the sportspresentation to provide play-by-play critique, discussion of interestingplayer and team statistics, and the like. However, because suchcommentary is provided and controlled by the show producer, viewers mayhave a single or small number of choices of different commentators.

More recently, the provision of video content by computer network hasopened more opportunities for different commentators to providecommentary for video content items. For example, users may record videocontent, add commentary to the recording, and then post thecommentary-containing recording to a video distribution website. In suchcases, while the commentary in such a scenario may not be controlled bythe original video producer, the commentary is still stored with thevideo content, and as such cannot be consumed separately. Further,restrictions on the reproduction of the video content may limit suchcommentary opportunities. Additionally, the effort involved in recordingcommentary over the video content and then distributing the resultingmodified video content may limit the number of users that provide suchcommentary.

Therefore, embodiments are disclosed herein that relate to capturing,storing and providing commentary on video content items in a convenientmanner. The disclosed embodiments utilize a commentary capture device,such as sensor system comprising one or more of an image sensor, anacoustic sensor, and a depth sensor, to record actions performed by aviewer while watching a video content item. A user may opt to send suchrecorded commentary to a commentary service on a remote server, suchthat the commentary may be available for others to access when viewingthe same video content at a later time. Various metadata may be sent tothe commentary service along with the recorded commentary to aid in thelater selection and playback of the commentary. Examples of suchmetadata may include, but are not limited to, identification metadatathat identifies the commentator and the video content item that is thesubject of the commentary, and also synchronization metadata that allowsthe commentary to be synchronized with the video content during laterplayback. In some cases, such synchronization metadata may allow thecommentary to be presented at a correct location in the video contenteven if an edited version of the video content item is played.

The disclosed embodiments may allow anyone who wishes to be acommentator to publish commentary for a video content item for laterconsumption by others watching the video content item. This may allowviewers to see reactions and comments of friends that previously watchedthe same content item, and therefore may allow the later viewer to sharein the experience with the earlier-viewing friends. Further, this mayallow individuals to seek social status and, potentially, advertisingrevenue by publishing popular commentary.

FIG. 1 shows an example use scenario in which commentary may be recordedfor later playback with a video content item. First referring to viewingenvironment 100, a viewer 102 is watching a basketball game at a timet₁, and pumping his fist into the air in response to a player dunkingthe ball. Viewer 102 has previously elected to have sensor system 104record his actions while watching the game. Thus, sensor system 104records video and/or audio of the user's actions, and provides the videoand/or audio as inputs to a computing device 106. Computing device 106may then tag the video and/or audio inputs, hereinafter referred to ascommentary, with identification and synchronization metadata. Uponcompleting a viewing session (e.g. upon turning off the television,completion of the video content item, or other such concluding event),viewer 102 may be presented with an option of uploading the commentaryto a remote server for access by others. If the user elects not to sharethe commentary, then the commentary is not saved. On the other hand, ifthe user elects to share the commentary, the commentary and metadata isuploaded to a remote server via a network.

Next, viewer 110 may elect to watch the same basketball at a later timet₂. For example, viewer 110 may have recorded the basketball broadcastvia a digital video recorder, or may have accessed a copy of thebroadcast via a computer network. Further, viewer 110 has elected toplay commentary created by viewer 102 while watching the basketballgame. As such, video commentary and/or audio commentary created byviewer 102 while watching the basketball game is presented to viewer 110along with the basketball game and synchronized with the basketballgame. For example, in the depicted embodiment, viewer 110 sees viewer102's commentary displayed in a window 112, and thus can see viewer 102pumping his fist into the air at the same location in the basketballgame that originally prompted this action. In this manner, viewerswatching separate broadcasts of a video content item may still share inthe experience, even when watching the video content item at differenttimes. It will be understood that commentary may be presented in anysuitable manner, including but not limited to on a primary displaydevice and/or on a companion device, such as a smart phone, notepadcomputer, laptop computer, etc., and may be presented in video and/oraudio format.

The disclosed embodiments also may provide a convenient mechanism forbusiness and other entities to reach out to interested patrons. Forexample, an entity may provide commentary that includes a link to ashopping site or that triggers a shopping software widget to allow auser to buy a product that is featured in a media content item. Suchcommentary may be presented on a same display on which the media contentitem is presented, or may be presented on a companion device (e.g. aviewer's smart phone).

FIG. 2 shows an example embodiment of a video content and commentary useenvironment 200. Use environment 200 illustrates an arbitrary number Mof users participating in an arbitrary number N of different viewingsessions, which may or may not be temporally overlapping. Each viewingsession is depicted as receiving video content from a different source.For example, viewing session 1 201 receives content from cable provider1 214 via a cable TV connection, viewing session 2 202 receives contentvia a computer network, and viewing session 3 203 receives content fromcable provider 2 215. It will be understood that content may be receivedfrom any suitable source, including but not limited to via a satellitereceiver, via an antenna, via a local playback device such as a DVDplayer, or in any other suitable manner.

Referring to viewing session 1 201, two viewers, shown as user 1 204 anduser 2 206, are watching a television system 208 together. As users 1and 2 watch television, they may elect to record their actions in audioand/or video format via a commentary input device, such as a viewingenvironment sensor system 210, as described above. As such, a computingdevice 212 may be configured to receive output from sensor system 210and thus record the commentary provided by the users. Computing device212 may further be configured to tag the commentary with metadataregarding the identification of the video content item currently beingplayed, and also the identities of the viewers providing commentary. Itwill be understood that, while FIG. 2 depicts the display device, sensorsystem and computing device as separate components, two or more of thesedevices may be integrated in other embodiments.

The commentary may take any suitable form, including but not limited tospeech, actions, gestures, etc., and may be made consciously orunconsciously. Further, commentary may be provided by other inputsensors than audio and image sensors. For example, a user may utilize asensor in the form of a keyboard (hardware or software) or other textinput device to input text and/or markup commentary. Such markup mayinclude hyperlinks, software triggers, and other interactive elements.

In some embodiments, computing device 212 may be configured to generateemotional response metadata from the audio and/or image data receivedfrom sensor system 210, such that emotional states may be attributed tothe viewers. Such data may then be used to identify particularlyinteresting commentary for presentation, such that interesting portionsof the commentary as selected based upon the emotional response metadatamay be provided to a requesting viewer.

Computing device 212 may further be configured to generatesynchronization metadata for the commentary. Synchronization metadatacomprises information that allows the commentary to be appropriatelysynchronized with the video content item, so that, during playback,commentary is presented concurrently with the occurrence in the videoitem that prompted the commentary. The synchronization metadata maycomprise any suitable metadata. For example, in some instances, the samedevice (e.g. computing device 212), may control the presentation ofvideo content and the recording and playback of commentary. Similarly, asingle entity may provide software and/or hardware for performing thesefunctions, and thus may control the flow of data to and from theseseparate components. In such instances, a proprietary time stamp may beapplied to the video content item and commentary. In some situations,such a time code may be specific to the particular version of the videocontent item being displayed (e.g. whether the video content item isedited or unedited for mature content). This may permit the commentaryto be correctly synchronized to the video content when that version ofthe video content is played back. A time stamp also may be used ininstances where the video content item was played from a local mediasuch as a DVD, in which case information regarding a version of thevideo content stored on the DVD may be provided as additionalidentification metadata.

In other embodiments, the computing device 212 may generate a digitalfingerprint of one or more frames of the video content item whenparticularly interesting commentary is detected (e.g. by emotionalresponse metadata), and then tag that commentary with the fingerprint assynchronization metadata. In this manner, the commentary may besynchronized with any version of the video content item that containsthe fingerprinted frames, even if the content has been edited, forexample, by deleting frames, by shortening the opening and closingcredits, etc.

In some instances, television system 208 may receive content from asource independent of computing device 212. For example, televisionsystem 208 may receive television content from a cable provider, such ascable provider 1 214, that is not affiliated with services running oncomputing device 212. In this instance, computing device 212 may not beable to directly determine an identity of the video content itemcurrently being watched. As such, computing device 212 may be configuredto record a sample of the audio portion of a video content item via anaudio sensor of sensor system 210, and then contact a remote service todetermine an identity of the audio/video broadcast by sending therecorded audio sample to the service. Then, upon obtaining an identityof the video content item, computing device 212 may send the commentaryto a commentary service operated by cable provider 1 214, along with theidentity of the video content item and a time at which the commentarywas captured. The commentary service may then generate synchronizationmetadata for the commentary item using this information.

After recording the commentary and generating metadata for thecommentary, computing device 212 is configured, upon confirmation by theviewer captured in the recorded commentary, to publish the commentary bysending the commentary and associated metadata to a commentary server220 via a network 222, which may be operated by a same entity thatprovided the content associated with the commentary, or a differententity. Commentary server 220 may store such commentary and metadatarespectively in a commentary data store 224. As shown in FIG. 2,commentary data store may be configured to store any suitable metadata,including but not limited to identification metadata 226,synchronization metadata 228, and emotional response metadata 230.

Commentary server 220 also may be in communication with other datastores. For example, in embodiments where a video content provideroperates commentary server 220 to store commentary for video contentowned or otherwise provided by that video content provider, commentaryserver 220 may communicate with a media data store 232 that stores mediacontent items 234 for provision to requesting viewers.

Further, in some embodiments, commentary server 220 communicates with auser data store 236 that stores data related to registered users ofcommentary server 220, including but not limited to user account data.Such data may include, for example, user identification information,demographic information, and/or user device information that identifiesone or more computing devices operated by the user. This may allowcommentary to be provided to a companion device, such as a smart phoneor notepad computer, during presentation of a media content item onanother primary display device.

The user information also may include social network information relatedto social networks of a user, as indicated at 238. Social networkinformation may be used in identifying commentary for presentation tothat user. The term “social network information” as used herein maysignify information regarding any other user with a social connection tothe specified user. For example, the social network information mayspecify a list of other users that are formally connected via an onlinesocial network. Likewise, the social network information may comprisegenealogic data and/or descriptive information, such as alumniinformation, that may be used to associate the specified user with otherusers likely to have more highly correlated interests and/or behaviorsthan other users not meeting the same descriptive information. Further,the social network information may comprise information regardingcelebrities, artists, and other individuals or entities in which thespecified user follows or likes on a social networking site.

It will be understood that, in other embodiments, commentary data, mediadata, and social network data also may be stored in locations remote tocommentary server 220. Such remote storage is indicated by media data240, commentary data 242, and social network data 244.

Continuing with FIG. 2, user 3 in viewing session 2 and user M inviewing session N also may elect to publish recorded commentary tocommentary server 220. In this manner, commentary server 220 may collectand store commentary for a potentially wide variety of video contentitems from a diverse set of commentators.

Upon selection of a video content item and/or during viewing of a videocontent item in a viewing session, if commentary is available for thatvideo content item, a viewer may elect to consume the commentary alongwith the video content item. Such commentary may be discovered in anysuitable manner. For example, in some embodiments, a user may bealerted, upon selection of a video content item, to the existence ofcommentary provided by previously-approved commentators, such as socialnetwork members. Likewise, a user may also have the ability to searchfor commentary using a search engine. It will be understood that thesemethods of discovering commentary are presented for the purpose ofexample, and are not intended to be limiting in any manner.

Upon electing to view commentary, the relevant commentary is sent fromcommentary server 220 or other storage location to the requestingviewer. The commentary may be sent to a media computing device, such ascomputing device 212, for display on a primary display in the viewingenvironment (e.g. a television system or monitor), or may be sent to acompanion device (e.g. a laptop computer, smart phone, notepad computer,portable media player, etc.), such as companion device 250 of user 1 andcompanion device 252 of user 2.

In some instances, commentary stored by one content provider may berequested by a viewer that receives content from another provider. As amore specific example, user M 260 may wish to view commentary providedby user 1. However, user M receives television content from cableprovider 2 215, while user 1's commentary may be stored and provided bycable provider 1 214. Where the synchronization metadata of suchcommentary comprises a time stamp that is proprietary to cable provider1 214, it may be difficult to synchronize the commentary with thecontent provided by cable provider 2 215 due to potential differences inthe version of the media content presented. To overcome suchdifficulties, cable providers 1 and 2 may use a common time stamp, ormay provide a mechanism for translating the synchronization metadatabetween the two cable providers. Likewise, the use of fingerprinting tosynchronize commentary also may avoid such synchronization problems.

FIG. 3 shows a flow diagram depicting an embodiment of a method 300 ofreceiving and providing commentary data from the standpoint of acommentary server. Method 300 comprises, at 302, receiving inputs ofcommentary captured by one or more commentary input devices. Suchcommentary input devices may comprise, for example, audio and/or imagesensors present in a video viewing environment, as well as text entrydevices (e.g. hardware keyboard, software keyboard on notepad computeror smart phone, etc.) and any other input device (e.g. motion sensors ona portable device).

As mentioned above, metadata may be received with the commentary input.Such metadata may include identification metadata 304, such as acommentator identification 306 (whether an individual or other entity)and a media content identification 308 that identifies with which thecommentary is associated. Further, such metadata also may comprisesynchronization metadata 310 that facilitates synchronizing thecommentary with the associated media content item. The synchronizationmetadata may comprise any suitable data useable to synchronize thecommentary with the associated media content item, including but notlimited to a time stamp and/or digital fingerprint information. Further,in some embodiments, the synchronization metadata may comprise anidentity of the video content item for use by a content provider ingenerating a time stamp.

The metadata also may include emotional response metadata 311 thatrelates to the emotional response of a commentator as a function oflocation within the associated media content item. Such emotionalresponse metadata may allow particularly interesting portions ofcommentary to be identified within a stream of audio commentary databased upon characteristics of the emotional response metadata.

Next, method 300 comprises, at 312, storing the inputs of the commentarydata and metadata. Then, method 300 comprises, at 314, receiving arequest from a media presentation device, such as a computing device, atelevision system, a mobile device, etc. for commentary relevant to aspecified media content item and potentially a specified user. Uponreceiving the request, method 300 comprises, at 316, identifyingrelevant commentary to send to the user. For example, in someembodiments, the relevant commentary may be identified based upon socialnetwork information for the specified user. In some situations, a usermay specify a social network or a social network member to use inidentifying commentary, while in other situations the existence of asocial network may be inferred by descriptive information.

In some embodiments, identifying relevant commentary may compriseidentifying particularly relevant portions of a stream of commentarydata based upon emotional response metadata for that stream ofcommentary data. This may allow those portions of the stream ofcommentary data that appear to capture emotionally interestingcommentary content to be presented. As a more specific example, thestream of commentary data comprises unedited video data or audio data ofa commentator watching an entire football game while sitting at home ona sofa, the stream of commentary data may potentially comprise at leastsome material of little interest to another viewer. As such, emotionalresponse metadata may be used to locate those portions of the stream ofcommentary data that are of particular interest.

After identifying the relevant commentary data, method 300 comprises, at318, sending the identified relevant commentary data to the requestingcomputing device. The synchronization metadata for the commentary alsomay be sent. The commentary data that is sent may comprise a list ofavailable commentary for the specified media content item, or maycomprise commentary from a particular commentator that was specified inthe request for the commentary data. Further, the commentary data thatis sent may comprise those portions of the commentary with emotionalresponse metadata that meets a threshold value. It will be understoodthat, in some embodiments, the emotional response metadata may be sentto the requesting device along with the commentary, and the requestingdevice may then use the emotional response metadata to locate commentaryof interest. In yet other embodiments, emotional response analysis maybe performed at the time commentary is generated and published. Thus, insuch embodiments, the commentary received from the commentator andstored comprises the emotionally interesting parts of an original streamof commentary.

FIG. 4 shows an embodiment of a method 400 of providing commentary forvideo content items from a client device perspective. Method 400comprises, at 402, receiving and recording commentary data from one ormore commentary input devices during presentation of a video contentitem. Such sensors may include, but are not limited to, audio sensors404, text entry devices 405, and image sensors 406.

Method 400 next comprises generating metadata associated with thecommentary data. As mentioned above, the metadata may includeidentification metadata, such as a commentator identification 412 and amedia content identification 414 that identifies the media content itemassociated with the commentary. The metadata also may includesynchronization metadata, such as a time stamp 418, digital fingerprintdata 420, and/or an identification of the media content item to be sentwith the commentary to a media content provider so that the provider maygenerate more detailed synchronization metadata for the commentary (e.g.a proprietary time stamp).

The generated metadata may further comprise emotional response metadatato facilitate the identification of interesting portions of thecommentary. Such emotional response metadata may be generated in anysuitable manner. For example, the computing device that receives thesensor inputs may be configured to identify sounds, sound intensities,postures, motions, characteristics of motions (e.g. speed of motion,facial expression accompanying motion), etc. in the sensor data withparticular emotions or emotional intensities, and to store theidentified emotion and/or emotional intensity as a function of locationwithin the media content item.

In some embodiments, the emotional response metadata may be used toidentify potentially interesting portions of the commentary prior touploading the commentary to the commentary server. Thus, in suchembodiments, only the identified portions may be uploaded. In otherembodiments, the emotional response metadata may be uploaded with thecommentary data so that such analysis may be performed at a later timeif desired.

In some embodiments, the computing device further may be configured todistinguish between the viewer's emotional response to a video item andthe viewer's general temper. For example, in some embodiments, thecomputing device may ignore or otherwise store data indicating emotionaldisplays detected when the commentator's attention is not focused on themedia content item being displayed. Thus, as an example scenario, if thecommentator is visibly annoyed because of a loud noise originatingexternal to the video viewing environment, the computing device may beconfigured not to ascribe the detected annoyance with the video item,and may not record the annoyance at that temporal position within theviewer's emotional response profile for the video item. Further, inembodiments in the sensor data comprises image data, suitable eyetracking and/or face position tracking techniques may be employed(potentially in combination with a depth map of the video viewingenvironment) to determine a degree to which the viewer's attention isfocused on the display device and/or the video item.

Continuing with FIG. 4, method 400 next comprises, at 426, sending, toan output device such as a display, a request regarding whether topublish the commentary data to a commentary server. This permits thecommentator the opportunity to decline or accept publication, asdesired. Further, such a request may further comprise, at 428, a requestregarding whether the commentator wishes to edit the commentary beforepublishing the commentary, e.g. by deleting portions of the commentary.If the commentator elects to make such edits, the edits are received at430. Then, a user input requesting to publish the commentary data isreceived at 432, and the commentary data and associated metadata aresent to the commentary server at 434. It will be understood that, if theuser elects at 426 not to publish the commentary data, then processes432 and 434 may be omitted.

The person recording the commentary also may elect to view thecommentary of others at time, either during the recording of his/her owncommentary, or at a different time. Thus, method 400 comprises, at 436,receiving a user input from the commentator (or other viewer in the sameviewing environment) requesting to view other commentary generated by amember of a social network (formal or informal) of the requestingviewer, and at 438, sending a request to the commentary server for suchcommentary. Method 400 next comprises, at 440, receiving the requestedother commentary, and at 442, presenting the other commentary. The othercommentary may take any suitable form, including but not limited toaudio, video, text, links, software triggers, and/or any other suitabledata and information.

It will be understood that a viewer need not record his or her owncommentary to receive commentary of others, and that the commentaryproduction and commentary playback processes of FIG. 4 are presentedtogether to illustrate an example use scenario. Thus, a viewer mayperform processes 436-442 to locate commentary for a desired mediacontent item without performing the other portions of method 400.

It will further be understood that the embodiments described herein maybe configured to allow users to monetize the provision of content. Forexample, a content provider that also hosts a commentary service mayallow users to earn money based upon a number of times commentary isviewed. Further, such monetization may be distributed to other involvedparties, such as the content creator, as the content creator alsobenefits when a user watches content along with commentary.

The embodiments described herein also may facilitate performinganalytics on video content. For example, commentary provided by usersmay be analyzed to determine where the commentary occurs in the show.Then, the nature of the commentary and the frequency at which commentaryappears at different locations in a show may allow content creators,advertisers, and other interested parties to see what parts of a videocontent item generate particular interest among viewers. Likewise, asmentioned above, such analytics also may be used to determineinteresting portions of commentary for presentation, such that portionsof a commentary stream are presented, rather than the entire stream.

In some embodiments, the above described methods and processes may betied to a computing system including one or more computers. Inparticular, the methods and processes described herein may beimplemented as a computer application, computer service, computer API,computer library, and/or other computer program product.

FIG. 5 schematically shows a nonlimiting computing system 500 that mayperform one or more of the above described methods and processes.Computing system 500 is shown in simplified form. It is to be understoodthat virtually any computer architecture may be used without departingfrom the scope of this disclosure. In different embodiments, computingsystem 500 may take the form of a mainframe computer, server computer,desktop computer, laptop computer, tablet computer, home entertainmentcomputer, network computing device, mobile computing device, mobilecommunication device, gaming device, etc.

Computing system 500 includes a logic subsystem 502 and a data-holdingsubsystem 504. Computing system 500 may optionally include a displaysubsystem 506, communication subsystem 508, and/or other components notshown in FIG. 5. Computing system 500 may also optionally include userinput devices such as keyboards, mice, game controllers, cameras,microphones, and/or touch screens, for example.

Logic subsystem 502 may include one or more physical devices configuredto execute one or more instructions. For example, the logic subsystemmay be configured to execute one or more instructions that are part ofone or more applications, services, programs, routines, libraries,objects, components, data structures, or other logical constructs. Suchinstructions may be implemented to perform a task, implement a datatype, transform the state of one or more devices, or otherwise arrive ata desired result.

The logic subsystem may include one or more processors that areconfigured to execute software instructions. Additionally oralternatively, the logic subsystem may include one or more hardware orfirmware logic machines configured to execute hardware or firmwareinstructions. Processors of the logic subsystem may be single core ormulticore, and the programs executed thereon may be configured forparallel or distributed processing. The logic subsystem may optionallyinclude individual components that are distributed throughout two ormore devices, which may be remotely located and/or configured forcoordinated processing. One or more aspects of the logic subsystem maybe virtualized and executed by remotely accessible networked computingdevices configured in a cloud computing configuration.

Data-holding subsystem 504 may include one or more physical,non-transitory, devices configured to hold data and/or instructionsexecutable by the logic subsystem to implement the herein describedmethods and processes. When such methods and processes are implemented,the state of data-holding subsystem 504 may be transformed (e.g., tohold different data).

Data-holding subsystem 504 may include removable media and/or built-indevices. Data-holding subsystem 504 may include optical memory devices(e.g., CD, DVD, HD-DVD, Blu-Ray Disc, etc.), semiconductor memorydevices (e.g., RAM, EPROM, EEPROM, etc.) and/or magnetic memory devices(e.g., hard disk drive, floppy disk drive, tape drive, MRAM, etc.),among others. Data-holding subsystem 504 may include devices with one ormore of the following characteristics: volatile, nonvolatile, dynamic,static, read/write, read-only, random access, sequential access,location addressable, file addressable, and content addressable. In someembodiments, logic subsystem 502 and data-holding subsystem 504 may beintegrated into one or more common devices, such as an applicationspecific integrated circuit or a system on a chip.

FIG. 5 also shows an aspect of the data-holding subsystem in the form ofremovable computer-readable storage media 510, which may be used tostore and/or transfer data and/or instructions executable to implementthe herein described methods and processes. Removable computer-readablestorage media 510 may take the form of CDs, DVDs, HD-DVDs, Blu-RayDiscs, EEPROMs, and/or floppy disks, among others.

It is to be appreciated that data-holding subsystem 504 includes one ormore physical, non-transitory devices. In contrast, in some embodimentsaspects of the instructions described herein may be propagated in atransitory fashion by a pure signal (e.g., an electromagnetic signal, anoptical signal, etc.) that is not held by a physical device for at leasta finite duration. Furthermore, data and/or other forms of informationpertaining to the present disclosure may be propagated by a pure signal.

The terms “module,” “program,” and “engine” may be used to describe anaspect of computing system 500 that is implemented to perform one ormore particular functions. In some cases, such a module, program, orengine may be instantiated via logic subsystem 502 executinginstructions held by data-holding subsystem 504. It is to be understoodthat different modules, programs, and/or engines may be instantiatedfrom the same application, service, code block, object, library,routine, API, function, etc. Likewise, the same module, program, and/orengine may be instantiated by different applications, services, codeblocks, objects, routines, APIs, functions, etc. The terms “module,”“program,” and “engine” are meant to encompass individual or groups ofexecutable files, data files, libraries, drivers, scripts, databaserecords, etc.

It is to be appreciated that a “service”, as used herein, may be anapplication program executable across multiple user sessions andavailable to one or more system components, programs, and/or otherservices. In some implementations, a service may run on a serverresponsive to a request from a client.

When included, display subsystem 506 may be used to present a visualrepresentation of data held by data-holding subsystem 504. As the hereindescribed methods and processes change the data held by the data-holdingsubsystem, and thus transform the state of the data-holding subsystem,the state of display subsystem 506 may likewise be transformed tovisually represent changes in the underlying data. Display subsystem 506may include one or more display devices utilizing virtually any type oftechnology. Such display devices may be combined with logic subsystem502 and/or data-holding subsystem 504 in a shared enclosure, or suchdisplay devices may be peripheral display devices.

When included, communication subsystem 508 may be configured tocommunicatively couple computing system 500 with one or more othercomputing devices. Communication subsystem 508 may include wired and/orwireless communication devices compatible with one or more differentcommunication protocols. As nonlimiting examples, the communicationsubsystem may be configured for communication via a wireless telephonenetwork, a wireless local area network, a wired local area network, awireless wide area network, a wired wide area network, etc. In someembodiments, the communication subsystem may allow computing system 500to send and/or receive messages to and/or from other devices via anetwork such as the Internet.

It is to be understood that the configurations and/or approachesdescribed herein are exemplary in nature, and that these specificembodiments or examples are not to be considered in a limiting sense,because numerous variations are possible. The specific routines ormethods described herein may represent one or more of any number ofprocessing strategies. As such, various acts illustrated may beperformed in the sequence illustrated, in other sequences, in parallel,or in some cases omitted. Likewise, the order of the above-describedprocesses may be changed.

The subject matter of the present disclosure includes all novel andnonobvious combinations and subcombinations of the various processes,systems and configurations, and other features, functions, acts, and/orproperties disclosed herein, as well as any and all equivalents thereof.

1. On a computing device, a method comprising: receiving a user inputrequesting to publish commentary data to a commentary server; duringpresentation of a video content item, obtaining and recording thecommentary data, the commentary data comprising one or more of audiodata, video data, and text data; obtaining commentator identificationmetadata that identifies a commentator associated with the commentarydata; obtaining content identification metadata that identifies thevideo content item; obtaining emotional response metadata determinedfrom analysis of the commentary data, the emotional response metadatarepresenting an emotional response of the commentator as a function oflocation within the video content item; and providing the commentarydata, the emotional response metadata, the commentator identificationmetadata and the content identification metadata to the commentaryserver.
 2. The method of claim 1, wherein obtaining the emotionalresponse metadata comprises generating the emotional response metadatafrom sensor data obtained during presentation of the video content item.3. The method of claim 2, wherein the sensor data comprises one or moreof video data and audio data.
 4. The method of claim 1, furthercomprising selecting portions of the commentary data to send to thecommentary server based upon the emotional response metadata.
 5. Themethod of claim 1, further comprising receiving user editing of thecommentary data before sending the commentary data to the commentaryserver.
 6. The method of claim 1, wherein receiving the user inputrequesting to publish the commentary data comprises receiving the userinput prior to recording the commentary data.
 7. The method of claim 1,wherein receiving the user input requesting to publish the commentarydata comprises sending to an output device a request regarding whetherto publish the commentary to the commentary server, and receiving theuser input in response to the request.
 8. The method of claim 1, furthercomprising receiving a user input requesting to view other commentarygenerated by a member of a selected social network, sending a requestfor the other commentary, receiving the other commentary, and presentingthe other commentary and an associated video content item.
 9. The methodof claim 8, wherein the text data comprises markup text data.
 10. Themethod of claim 8, wherein presenting the other commentary and theassociated video content item comprises presenting the other commentaryon a different device as the associated video content item.
 11. Acomputing device, comprising: a logic device; and a storage devicecomprising instructions stored thereon that are executable by the logicdevice to obtain, during presentation of a video content item,commentary data comprising one or more of audio data, video data, andtext data; record the commentary data; obtain commentator identificationmetadata that identifies a commentator associated with the commentarydata and that identifies the video content item; obtain contentidentification metadata that identifies the video content item; obtainemotional response metadata determined from analysis of the commentarydata, the emotional response metadata representing an emotional responseof the commentator as a function of location within the video contentitem; send to an output device a request regarding whether to publishthe commentary data to the commentary server; receive a user inputrequesting to publish the commentary data to the commentary server; andprovide the commentary data, the identification metadata, and thesynchronization metadata to the commentary server.
 12. The computingdevice of claim 11, wherein the instructions are executable to obtainthe emotional response metadata by generating the emotional responsemetadata from sensor data obtained during presentation of the videocontent item.
 13. The computing device of claim 12, wherein the sensordata comprises one or more of video data and audio data.
 14. Thecomputing device of claim 11, wherein the instructions are furtherexecutable to select portions of the commentary data to send to thecommentary server based upon the emotional response metadata.
 15. Thecomputing device of claim 11, wherein the instructions are furtherexecutable to receive user editing of the commentary data before sendingthe commentary data to the commentary server.
 16. The computing deviceof claim 11, wherein the instructions are further executable to generatesynchronization metadata useable to synchronize the commentary data withthe video content, and to send the synchronization metadata to thecommentary server.
 17. The computing device of claim 11, wherein theinstructions are further executable to receive a user input requestingto view other commentary generated by a member of a selected socialnetwork, send a request for the other commentary, receive the othercommentary, and present the other commentary with an associated videocontent item.
 18. A storage device comprising instructions executable bya computing device to obtain, during presentation of a video contentitem, commentary data comprising one or more of audio data, video data,and text data; record the commentary data; obtain commentatoridentification metadata that identifies a commentator associated withthe commentary data and that identifies the video content item; obtaincontent identification metadata that identifies the video content item;obtain emotional response metadata determined from analysis of thecommentary data, the emotional response metadata representing anemotional response of the commentator as a function of location withinthe video content item; send to an output device a request regardingwhether to publish the commentary data to the commentary server; receivea user input requesting to publish the commentary data to the commentaryserver; and provide the commentary data, the identification metadata,and the synchronization metadata to the commentary server.
 19. Thestorage device of claim 18, wherein the instructions are furtherexecutable to generate synchronization metadata useable to synchronizethe commentary data with the video content item and send thesynchronization metadata to the commentary server.
 20. The storagedevice of claim 18, wherein the instructions are further executable toreceive a user input requesting to view other commentary generated by amember of a selected social network, send a request for the othercommentary, receive the other commentary, and present the othercommentary with an associated video content item.